# 需求：读取order.txt数据，统计北京一共售卖的商品种类，按照"北京_商品名称"输出
#coding:utf8

from pyspark import SparkContext, SparkConf
import json

from pyspark.sql.functions import json_tuple, json_array_length

if __name__ == '__main__':

    conf = SparkConf().setMaster("local[*]").setAppName("myWordCount")
    sc = SparkContext(conf=conf)

    textFile = sc.textFile("../data/input/order.txt")

    json_rdd = textFile.flatMap(lambda line : line.split("|"))

    # 通过json将数据转换成为字典
    dict_rdd = json_rdd.map(lambda x:json.loads(x))

    # 筛选出北京的数据
    beijing_rdd = dict_rdd.filter(lambda a: a['areaName'] == '北京')

    print(beijing_rdd.map(lambda a: a['areaName'] + '_' + a['category']).distinct().collect())